package jgrouse.jgdoc.api;

import java.util.Map;

import jgrouse.jgdoc.JGDocException;

public interface IDocElement
{
	public IComment getComment();
	public String getFullName();
	public String getLocalName();
	public IDocElement getPhysOwner();
	public String getOriginalParentName();
	public String getParentName();
	public IContainerElement getOwner();
	public String getCommentType();
	public String getCapCommentType();
	public String getTimestamp();
	public String getElementType();
	public String getPath();
	public boolean hasSamePhysOwner();

	public void setComment(IComment pComment);
	public void setFullName(String pFullName);
	public void setLocalName(String pLocalName);
	public void setParentName(String pParentName);

	public void postProcess() throws JGDocException;
	public void setupReferences(Map<String, IDocElement> pNames);
	public void setPhysOwner(IDocElement pPhysOwner);
	public void setTimestamp(String pTimestamp);
	public void setOwner(IContainerElement pOwner);
	public boolean isContainer();

}